Methods and apparatus to group advertisements by advertisement campaign

ABSTRACT

Methods and apparatus to group advertisements by advertisement campaign are disclosed. An example apparatus includes memory; instructions in the apparatus; and processor circuitry to execute the instructions to determine pixel color values from a reference advertisement of an advertisement campaign; remove bits from the pixel color values associated with the reference advertisement; determine a first color proportion corresponding the reference advertisement based on the pixel color values; associate the first color proportion with the advertisement campaign; and identify a second advertisement as associated with the advertisement campaign based on a second color proportion of the second advertisement relative to the first color proportion, the second advertisement different than the reference advertisement.

CROSS REFERENCE TO RELATED APPLICATIONS

This patent arises from a continuation of U.S. patent application Ser.No. 16/515,964, filed Jul. 18, 2019, now U.S. Pat. No. 11,195,200,entitled “METHODS AND APPARATUS TO GROUP ADVERTISEMENTS BY ADVERTISEMENTCAMPAIGN,” which claims the benefit of U.S. patent application Ser. No.14/988,273, filed Jan. 5, 2016, now U.S. Pat. No. 10,366,404, entitled“METHODS AND APPARATUS TO GROUP ADVERTISEMENTS BY ADVERTISEMENTCAMPAIGN,” which claims the benefit of U.S. Provisional PatentApplication No. 62/216,480, filed Sep. 10, 2015, entitled “METHODS ANDAPPARATUS TO GROUP ADVERTISEMENTS BY ADVERTISEMENT CAMPAIGN.” Priorityto U.S. patent application Ser. Nos. 16/515,964, 14/988,273, and U.S.Provisional Patent Application No. 62/216,480 is hereby claimed. U.S.patent application Ser. Nos. 16/515,964, 14/988,273, and U.S.Provisional Patent Application No. 62/216,480 are incorporated herein byreference in their entireties.

FIELD OF THE DISCLOSURE

This disclosure relates generally to advertising, and, moreparticularly, to methods and apparatus to group advertisements byadvertisement campaign

BACKGROUND

In recent years online advertising has had significant growth comparedto traditional avenues of advertising, including television and radio.Some companies design online advertisements to promote certain brands orproducts in a suitable manner for online environments. In some cases,advertisements are designed as part of an overarching advertisementcampaign. To increase the effectiveness of online advertising, a sameidea or theme is sometimes used across numerous advertisements that arepart of a same advertisement campaign

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an example system for grouping advertisements intoadvertisement campaigns in accordance with the teachings of thisdisclosure.

FIG. 2 shows example advertisements that the example advertisementanalyzer of FIG. 1 identifies as being part of a same advertisementcampaign.

FIG. 3 is an example apparatus that may be used to implement the exampleadvertisement analyzer of FIG. 1.

FIG. 4 is a flowchart representative of example machine readableinstructions that may be executed to implement the example advertisementanalyzer of FIGS. 1 and 3 to group advertisements by advertisementcampaign.

FIG. 5 is a flowchart representative of example machine readableinstructions that may be executed to implement the example advertisementanalyzer of FIGS. 1 and 3 to compare color proportions ofadvertisements.

FIG. 6 is a flowchart representative of example machine readableinstructions that may be executed to implement the example advertisementanalyzer of FIGS. 1 and 3 to define color proportion thresholds toassociate advertisements with advertisement campaigns.

FIG. 7 is a flowchart representative of example machine readableinstructions that may be executed to implement the example advertisementanalyzer of FIGS. 1 and 3 to group advertisements by advertisementcampaign.

FIG. 8 is a block diagram of an example processor platform that may beused to execute the instructions of FIG. 4, FIG. 5, FIG. 6, and/or FIG.7 to implement the example advertisement analyzer of FIGS. 1 and 3and/or, more generally, the example system of FIG. 1.

DETAILED DESCRIPTION

Example methods, systems, and/or articles of manufacture disclosedherein enable grouping advertisements by advertisement campaign based oncolor characteristics of such advertisements.

Examples disclosed herein identify and categorize advertisements thatbelong to a same advertisement campaign by performing color paletteanalyses on advertisement images. For example, advertisements that arepart of a same campaign may have a same overarching theme or designtheme that uses similar color characteristics across all of theadvertisements. By analyzing color characteristics across advertisementimages, examples disclosed herein may be used to identify and categorizeadvertisements that belong to a same advertisement campaign even whenlanguages and image sizes are different between the advertisements.

Example methods are disclosed herein to determine characteristics foruse in grouping advertisements by advertisement campaign. In examplesdisclosed herein, a first advertisement image is obtained andproportions of colors relative to other colors in the image aredetermined. In some examples, the different color proportions of anadvertisement image are representative of the color distribution orcolor histogram of the advertisement image. For example, colorproportions of an advertisement image may be a 20% proportion for afirst color, a 40% proportion for a second color, a 20% proportion for athird color, and a 20% proportion for a fourth color.

To determine the color proportions, examples disclosed herein involveperforming palette analyses to obtain the red-green-blue (RGB) values ofpixels in advertisement images. In some examples, the RGB values arerounded by dropping the least significant bit of each RGB value to grouppixel color values into a pre-determined number of color groups. Forexample, least significant bits of color values for different shades ofblue may be rounded to group the different shades of blue under a singleblue color value. In some examples, different amounts of rounding forRGB values and different numbers of color groups may be used to achievedifferent levels of accuracy pertaining to identifying advertisements asbelonging to particular advertisement campaigns.

In examples disclosed herein, the first advertisement image is areference advertisement image, and its color proportions are used asreference color proportions that subsequently analyzed advertisementsmust sufficiently match to be deemed as being part of the sameadvertisement campaign as the reference advertisement image. Forexample, a palette analysis is performed on a subsequent, secondadvertisement image to determine color proportions of the secondadvertisement image. In such examples, the color proportions of thesecond advertisement image are compared to the color proportions of thereference advertisement image. In such examples, if the colorproportions of the reference image and the second advertisement imageare sufficiently similar, the second advertisement image is identifiedas being associated with the same advertisement campaign as thereference advertisement image.

For example, color proportions for a particular color present in boththe reference image and the second advertisement image are sufficientlysimilar if a color proportion for that color of the referenceadvertisement image matches a color proportion for the same color of thesecond advertisement image within a threshold. In such examples, thethreshold is selected to identify images belonging to a sameadvertisement campaign despite some differences in the color proportionsbetween different advertisement images. For example, a red proportion ofthe second image may be ±2% of the red proportion of the referenceimage. In some examples, threshold values may be defined or selected toachieve different levels of performance or accuracy in identifyingadvertisements corresponding to particular advertisement campaigns. Insome examples, advertisement images are categorized to an advertisementcampaign and tagged with corresponding metadata to identify theadvertisement images as corresponding to particular advertisementcampaigns.

Use of color proportions, as disclosed herein, facilitates analyzingadvertisements of different sizes for grouping into correspondingadvertisement campaigns because examples disclosed herein use relativecolor proportions rather than other features that may be affected bydifferences in image size. Additionally, palette analysis examplesdisclosed herein are useful to analyze advertisements containing text indifferent languages because color proportions can be measured andanalyzed independent of written languages appearing in theadvertisements.

Some examples disclosed herein involve determining a first colorproportion of a first color in a first advertisement and a second colorproportion of a second color in the first advertisement (e.g., areference advertisement). In such examples, the first color proportionand the second color proportion of the first advertisement are comparedto a third color proportion and a fourth color proportion of a secondadvertisement (e.g., a candidate advertisement). In such examples, thesecond advertisement is associated with a same advertisement campaign ofthe first advertisement when a similarity between the first colorproportion and the third color proportion satisfies a first threshold(e.g., a first color proportion range threshold), and when a similaritybetween the second color proportion and the fourth color proportionsatisfies a second threshold (e.g., a second color proportion rangethreshold).

An example threshold is a color proportion range threshold. The colorproportion range threshold is defined as an acceptable differencebetween a color proportion value and another color proportion value toindicate a match between the color proportions. In some examples, thefirst threshold defines a color proportion value tolerance amountdifferent than the second threshold. In some examples, the first colorof the first color proportion sufficiently matches a color of the thirdcolor proportion within a color range threshold and the second color ofthe second color proportion sufficiently matches a color of the fourthcolor proportion within the color range threshold. In some examples, thecolor range threshold defines a difference between a first color bitvalue and a second color bit value as being similar.

Some examples disclosed herein involve detecting a plurality of colorsin the first advertisement (e.g., a reference advertisement). In someexamples, a subset of the plurality of colors is selected based on thesubset of the colors having relatively higher proportions of presence inthe first advertisement than others of the plurality of colors. In suchexamples, the first color proportion and the second color proportioncorrespond to two respective colors of the subset of colors. Someexamples also involve associating the first and second advertisementswith a same advertisement campaign when a threshold number of colorproportions in the selected subset of the plurality of colors detectedin the first advertisement sufficiently match a number of correspondingcolor proportions of the second advertisement within at least one of thefirst threshold or the second threshold such as a color proportion rangethreshold. In such examples, the first threshold and the secondthreshold specify that a color proportion of a color of the selectedsubset of the plurality of colors in the first advertisement is within arange of a color proportion of a corresponding color of the secondadvertisement.

Example apparatus to group advertisements by advertisement campaigndisclosed herein include an example color proportion generator, anexample comparator, and an example associator. In examples disclosedherein, the color proportion generator determines a first colorproportion of a first color and a second color proportion of a secondcolor in a first advertisement (e.g., a reference advertisement). Indisclosed examples, the comparator compares the first color proportionand the second color proportions of the first advertisement to a thirdcolor proportion and a fourth color proportion of a secondadvertisement. In examples disclosed herein, the associator associatesthe second advertisement with a same advertisement campaign of the firstadvertisement when a similarity between the first color proportion andthe third color proportion satisfies a first threshold (e.g., a firstcolor proportion range threshold) and a similarity between the secondcolor proportion and the fourth color proportion satisfies a secondthreshold (e.g., a second color proportion range threshold). Someexample apparatus include a color analyzer to detect a plurality ofcolors in the first advertisement and to select a subset of theplurality of colors based on the subset of the colors having relativelyhigher proportions of presence in the first advertisement than others ofthe plurality of colors in the first advertisement. In some suchexamples, the first color proportion and the second color proportion ofthe first advertisement correspond to two respective colors of thesubset of colors. Some example apparatus include an associator toassociate the first and second advertisements with a same advertisementcampaign when a threshold number of color proportions in the selectedsubset of the plurality of colors detected in the first advertisementsufficiently match corresponding color proportions of the secondadvertisement within at least one of the first threshold or the secondthreshold. In some examples, the associator tags the secondadvertisement with metadata including an advertisement campaignidentifier.

Disclosed example articles of manufacture include instructions that,when executed, cause a computing device to at least determine a firstcolor proportion of a first color and a second color proportion of asecond color in a first advertisement (e.g., a reference advertisement).In examples disclosed herein, the instructions cause the computingdevice to compare the first color proportion and the second colorproportion of the first advertisement to a third color proportion and afourth color proportion of a second advertisement. In examples disclosedherein, the instructions further cause the computing device to associatethe second advertisement with a same advertisement campaign of the firstadvertisement when a similarity between the first color proportion andthe third color proportion satisfies a first threshold (e.g., a firstcolor proportion range threshold) and a similarity between the secondcolor proportion and the fourth color proportion satisfies a secondthreshold (e.g., a second color proportion range threshold). In someexamples, the instructions further cause the computing device to tag thesecond advertisement with metadata including an advertisement campaignidentifier.

In examples disclosed herein, the instructions further cause thecomputing device to detect a plurality of colors in the firstadvertisement and to select a subset of the plurality of colors based onthe subset of the colors having relatively higher proportions ofpresence in the first advertisement than others of the plurality ofcolors of the first advertisement. In some such examples, the firstcolor proportion and the second color proportion correspond to tworespective colors of the subset of colors. In some disclosed examples,the instructions cause the computing device to associate the first andsecond advertisements with a same advertisement campaign when athreshold number of color proportions in the selected subset of theplurality of colors detected in the first advertisement sufficientlymatch corresponding color proportions of the second advertisement withinat least one of the first threshold or the second threshold.

Turning to the figures, FIG. 1 shows an example system 100 for groupingadvertisements 102 into advertisement campaigns 110 a-c. The examplesystem 100 includes an example advertisement analyzer 104 to identifycharacteristics of the advertisements 102 that are to be categorizedsuch as, for example, advertisement colors and proportions of colors. Inthe illustrated example, the example advertisement analyzer 104 maydirectly receive advertisements 102 to be categorized and/or obtainadvertisements 102 to be categorized via the Internet 106 from aplurality of example web servers 110. In some examples, theadvertisements 102 to be categorized may be stored on a removablestorage device and received directly by the advertisement analyzer 104.

The example advertisements 102 include graphics and/or text to advertisemedia, organizations, products, and/or services. In the illustratedexample, the advertisements 102 to be categorized are digital media thatmay be distributed using online Internet servers and/or broadcastsources, such as cable and/or satellite television delivery systems. Theexample advertisements 102 served by the web servers 110 may include anytype of advertisement that may be presented via a web browser or appthrough, for example, a static image, flash media, and/or video. In someexamples, the advertisements 102 to be categorized may include digitalimages of advertisements distributed in print media such as newspapersand magazines.

In some examples, different ones of the advertisements 102 may belong tocorresponding ones of the example advertisement campaigns 110 a-c. Onesof the advertisements 102 belonging to a same advertisement campaign 110a-c share the same or similar features. The example advertisementanalyzer 104 identifies advertisements 102 sharing the same or similarfeatures to identify the advertisements 102 as corresponding to ones ofthe example advertisement campaigns 110 a-c. In the illustrated example,the advertisements 102 corresponding to ones of the advertisementcampaigns 110 a-c are categorized by the advertisement analyzer 104 ascategorized advertisements 112 a-c. In examples disclosed herein, theadvertisement analyzer 104 analyzes advertisements by comparing colorproportions across different advertisement images to identifyadvertisements that are part of a same advertisement campaign 110 a-c.In this manner, the example advertisement analyzer 104 analyzes theadvertisements 102 and associates the categorized advertisements 112 a-cresulting from the analysis with example advertisement campaigns 110a-c. For example, for each advertisement campaign 110 a-c, correspondingones of the categorized advertisements 112 a-c have a common theme ordesign that is observable using example color proportion analysistechniques disclosed herein. Using such a shared theme or design,advertisements of the same campaign can be presented over the Internetacross different websites to create awareness and/or interest in thesubject matter of the same corresponding example advertisement campaign110 a-c. FIG. 2 illustrates an example first advertisement 102 a and anexample second advertisement 102 b that the example advertisementanalyzer 104 analyzes and associates with a same advertisement campaign(e.g., one of the advertisement campaigns 110 a-c of FIG. 1). Theexample first advertisement 102 a and the example second advertisement102 b are examples of advertisements 102 to be categorized. In theillustrated example, the first advertisement 102 a and the secondadvertisement 102 b are received directly by the advertisement analyzer104 and/or obtained from one of the example web servers 110 via theInternet 106.

In the illustrated example, the first advertisement 102 a includes anexample first advertisement image 202 and the second advertisement 102 bincludes an example second advertisement image 204. In some examples,the first advertisement 102 a and the second advertisement 102 b may bedifferent advertisement types and/or may originate from differentsources. For example, the first advertisement 102 a may be a staticimage advertisement type that is provided by an ad server and the secondadvertisement 102 b may be a video advertisement type that is providedby a video streaming service server. In the illustrated example of FIG.2, although the first advertisement 102 a and the second advertisement102 b are part of the same advertisement campaign, the correspondingadvertisement images 202 and 204 are of different dimensions and containdifferently located text 206 a and 206 b and visual features such as,for example, buttons 208 a and 208 b. In some examples, the firstadvertisement image 202 and the second advertisement image 204 mayinclude different quantities of and/or types of features. Although theillustrated example of FIG. 2 is described in connection with the firstadvertisement image 202 and the second advertisement image 204 being ofdifferent dimensions, examples disclosed herein may be used inconnection with advertisements of the same dimensions. Some examplesdisclosed herein may be used in examples in which the text 208 a of thefirst advertisement image 202 is in a different language than the text208 b of the second advertisement image 204. In the illustrated example,the text 206 b is in Spanish while the text 206 a is in English.Although the first advertisement 102 a includes text 206 a in Englishand the second advertisement 102 b includes text 206 b in Spanish,examples disclosed herein may be used to categorize the advertisements102 a, 102 b into advertisement campaigns.

In the illustrated example of FIG. 2, the first advertisement image 202and the second advertisement image 204 include a first color 210 and asecond color 212. In the illustrated example, the advertisement analyzer104 determines a first color proportion 214 corresponding to the firstcolor 210 in the first advertisement image 202 and determines a secondcolor proportion 216 corresponding to the second color 212 in the firstadvertisement image 202. The example advertisement analyzer 104 alsodetermines a third color proportion 218 corresponding to the first color210 in the second advertisement image 204 and a fourth color proportion220 corresponding to the second color 212 in the second advertisementimage 204. In the illustrated example, the color proportions 214, 216,218, 220 are percentages or fractions of their corresponding colors 210,212 relative to a total amount (e.g., total area) of other colors incorresponding ones of the advertisement images 202, 204. In otherexamples, the color proportions 214, 216, 218, 220 are percentages orfractions relative to a total size (e.g., a total area) of correspondingones of the advertisement images 202, 204.

In the illustrated example, the advertisement analyzer 104 determinesthat a color value (e.g., an RGB pixel color value) of the colorproportions 214, 216 of the first advertisement image 202 sufficientlymatch (e.g., within a color range threshold) a color value (e.g., an RGBpixel color value) of the color proportions 218, 220 of the secondadvertisement image 204.

As used herein, a color range threshold defines a range of shades of acolor that are sufficiently similar to a single, same color so that thenumerous shades of color are processed or analyzed as the single, samecolor. For example, for a 24-bit color value represented by an RGB pixelcolor value of 8:8:8 (e.g., an 8-bit red value, an 8-bit green value,and an 8-bit blue value) different shades of red are represented byvarying the 8-bit red value between 0 and 255 (e.g., R:G:B=>0 . . .255:0:0) which is the entire spectrum of the 8-bit binary valuerepresenting red. Similarly, different shades of green are representedby varying the 8-bit green value between 0 and 255 (e.g., R:G:B=>0:0 . .. 255:0). Similarly, different shades of blue are represented by varyingthe 8-bit blue value between 0 and 255 (e.g., R:G:B=>0:0:0 . . . 255).

Because color shades may differ slightly between advertisementscorresponding to a same advertisement campaign, color range thresholdsmay be used to identify such slightly differing color shades as beingsufficiently similar for use in color proportion comparisons disclosedherein. For example, the color range threshold of blue may be selectedto specify an allowable color bit value variance of three such thatshades of blue having bit values within three of a target shade of blueare considered as being the same color bit value as the target shade ofblue.

Using such color range thresholding in the illustrated example, theadvertisement analyzer 104 determines that a color value (e.g., an RGBpixel color value) of the first color proportion 214 of the firstadvertisement image 202 sufficiently matches (e.g., within a color rangethreshold) a color value of the third color proportion 218 of the secondadvertisement image 204. Also in the illustrated example, theadvertisement analyzer 104 determines that a color value (e.g., an RGBpixel color value) of the second color proportion 216 of the firstadvertisement image 202 sufficiently matches (e.g., within a color rangethreshold) a color value of the fourth color proportion 220 of thesecond advertisement image 204.

After using the color range threshold technique to determine that thecolor proportions 214, 216 of the first advertisement image 202 and thecolor proportions 218, 220 of the second advertisement image 204sufficiently correspond to respective colors, the example advertisementanalyzer 104 compares color proportions of the first advertisement image202 to corresponding color proportions of the second advertisement image204. In the illustrated example, the example advertisement analyzer 104compares the first color proportion 214 of the first advertisement image202 with the third color proportion 218 of the second advertisementimage 204 to determine whether the color proportions 214, 218 matchwithin a first color proportion range threshold 222.

Also in the illustrated example, the example advertisement analyzer 104compares the second color proportion 216 of the first advertisementimage 202 with the fourth color proportion 220 of the secondadvertisement image 204 to determine whether the color proportions 216,220 match within a second color proportion range threshold 224.

In the illustrated example, the first color proportion 222 and thesecond color proportion range threshold 224 define a color proportionvalue tolerance amount that indicates a sufficient similarity betweencolor proportion values to indicate a match. For example, the firstcolor proportion range threshold 222 may indicate that a blue colorproportion value of the second advertisement image 204 that is within±0.04 of a blue proportion value of the first advertisement image 202 issufficiently similar to indicate a match between the blue colorproportions of the first advertisement image 202 and the secondadvertisement image 204. In such examples, the second color proportionrange threshold 224 likewise indicates a color proportion valuetolerance amount for a color different than blue. In some examples,different color proportion range thresholds for different colors aredefined. For example, the first color proportion range threshold for thefirst color 210 may indicate a than the second color proportion rangethreshold 224 for the second color 212.

FIG. 3 is an example apparatus that may be used to implement the exampleadvertisement analyzer 104 of FIG. 1. In the illustrated example, theadvertisement analyzer 104 includes an example advertisement data store302, an example advertisement retriever 304, an example color analyzer306, an example color proportion generator 308, an example thresholdsdata store 310, an example comparator 312, an example associator 314,and an example advertisement campaign data store 316.

In the illustrated example, the advertisement analyzer 104 is providedwith the advertisement data store 302 to store advertisements 102 to becategorized that are received directly by the advertisement analyzer 104and/or obtained from the web servers 110 via the Internet 106. Theadvertisement data store 302 may be implemented using, for example, afile structure that stores electronic files, or a database. In theillustrated example, to retrieve the advertisements 102 to becategorized from the advertisement data store 302, the advertisementanalyzer 104 is provided with the advertisement retriever 304. In theillustrated example, the advertisement analyzer 104 uses theadvertisement retriever 304 to retrieve a first advertisement 102 a anda second advertisement 102 b from the advertisement data store 302. Insome examples, the advertisement analyzer 104 does not include theadvertisement data store 302 and instead the advertisement retriever 304directly receives advertisements 102 and/or obtains advertisements 102directly from the web servers 110 via the Internet 106.

In the illustrated example, to detect colors in the advertisements 102,the advertisement analyzer 104 is provided with the color analyzer 306.In the illustrated example, the color analyzer 306 detects colors (e.g.,the first color 210 or the second color 212 of FIG. 2) by analyzingpixel color values of pixels of the advertisements 102. In theillustrated example, pixel color values correspond to a red colorchannel, a green color channel, and a blue color channel that are usedin combination for each pixel to form a broad spectrum of colors (e.g.,red-green-blue (RGB) values per pixel). In some examples, pixel colorvalues also include hue-saturation-value (HSV) values and/orhue-saturation-lightness (HSL) values for further use in determining aquantitative representation of the pixel colors. In some examples, thecolor analyzer 306 groups similarly colored pixels into a group with onecolor value by dropping the least significant bits of each pixel colorvalue such that, for example, different shades of blue are evaluated asa same, single blue value. In some examples, the number of leastsignificant bits dropped by the color analyzer 306 is adjustable to varythe number of colors or range of color shades that are grouped into asame, single color value. In some examples, increasing the number ofleast significant bits dropped by the color analyzer 306 for pixel colorvalues decreases computation time and processing resources required toanalyze color proportions of advertisements but results in less accuratecolor detection. However, color detection accuracy can be increased bydecreasing the number of least significant bits dropped for pixel colorvalues. As such, the number of least significant bits to drop can bedetermined based on a desired level of accuracy performance inassociating advertisements with corresponding advertisement campaignsbalanced with processing speed and processing resource utilization toidentify such advertisement campaign associations.

In the illustrated example, the color analyzer 306 detects a pluralityof colors in the first advertisement image 202 (FIG. 2) by analyzing thepixel color values associated with pixels of the first advertisementimage 202. The color analyzer 306 then outputs color pixel quantityvalues indicative of respective numbers of pixels corresponding torespective individual colors (e.g., the first color 210 and the secondcolor 212). In some examples, the color analyzer 306 outputs a histogramindicative of the distribution of pixel color values within the firstadvertisement image 202. In some examples, the color analyzer 306excludes certain colors from being used for color proportion comparisonbetween images. For example, shades of black and/or white may beexcluded to improve the accuracy of advertisement image comparison.

In the illustrated example, after the color analyzer 306 detects theplurality of colors in the first advertisement image 202, the colorproportion generator 308 generates color proportions of the firstadvertisement image 202. In the illustrated example, the colorproportion generator 308 receives the total number of pixels in thefirst advertisement image 202 and the number of pixels corresponding toeach individual color of the first advertisement image 202. In theillustrated example, the color proportion generator 308 determines thecolor proportion values by dividing the number of pixels correspondingto individual colors (e.g., the first color 210 or the second color 212)by the total number of pixels of the first advertisement image 202. Forexample, if there are 500 pixels in the first advertisement image 202,and 250 pixels of the first advertisement image 202 are blue, the colorproportion of blue for the first advertisement image 202 is 50% or 0.50.In the illustrated example, the color proportions determined by thecolor proportion generator 308 for the first advertisement image 202 maybe associated with the first advertisement 102 a as reference colorproportions for an advertisement campaign (e.g., one of theadvertisement campaigns 110 a-c of FIG. 1). In some examples, asub-section of the first advertisement image 202 may be analyzed todetermine color proportions for the sub-section.

In the illustrated example, the advertisement analyzer 104 analyzes thesecond advertisement 102 b in a similar manner as the firstadvertisement 102 a. In the illustrated example, the color analyzer 306detects a plurality of colors in the second advertisement image 204(FIG. 2) by analyzing the pixel color values associated with pixels ofthe second advertisement image 204. The color analyzer 306 then outputscolor pixel quantity values indicative of respective numbers of pixelsfor corresponding individual colors of the second advertisement image204 (e.g., the first color 210 and the second color 212). In someexamples, the color analyzer 306 outputs a histogram indicative of thedistribution of pixel color values within the second advertisement image204.

In the illustrated example, the color proportion generator 308 generatescolor proportions of the second advertisement image 204. In theillustrated example, the color proportion generator 308 receives thetotal number of pixels in the second advertisement image 204 and thecolor pixel quantity value corresponding to each individual color of thesecond advertisement image 204. In the illustrated example, for eachcolor, the color proportion generator 308 determines the colorproportion values by dividing the color pixel quantity value of thatcolor (e.g., the first color 210 or the second color 212) by the totalnumber of pixels of the second advertisement image 204.

In the illustrated example, to compare the advertisements 102 with eachother, the advertisement analyzer 104 is provided with the comparator312. In some examples, the comparator 312 compares advertisements 102 tobe categorized with reference characteristics indicative of anadvertisement campaign category. In the illustrated example, thecomparator 312 selects and/or receives a subset of the plurality ofcolors detected by the color analyzer 306 based on the subset of thecolors having relatively higher proportions of presence in theadvertisement image (e.g., the first advertisement image 202) thanothers of the plurality of colors. For example, the comparator 312 mayidentify the top 50 colors with relatively higher color proportions outof all colors detected in the first advertisement image 202 (FIG. 2) tobe the subset. In some examples, the subset of the plurality of colorsis selected by sorting the color proportions of all the colors generatedby the color proportion generator 308 for the first advertisement image202 from largest to smallest and then selecting the top colorproportions. In some examples, the size of the subset (e.g., the numberof colors) of the plurality of colors detected by the color analyzer 306is adjustable to increase or decrease the size of the subset. As such,the number of colors in the subset can be selected based on the level ofdesired comparison accuracy performance balanced with computation speedand processing resource utilization. Comparison accuracy is indicativeof whether example color proportion analyses correctly associate asecond advertisement 102 b with the same advertisement campaign that anadvertiser intended for the second advertisement 102 b. A highercomparison accuracy means a large number of second advertisements 102 bare correctly identified as part of a particular advertisement campaign(e.g., of the first advertisement 102 a). A lower comparison accuracymeans a large number of second advertisements 102 b identified asbelonging to a particular advertisement campaign (e.g., of the firstadvertisement 102 a) do not actually correspond to the identifiedadvertisement campaign. For example, if few colors are used in a subset,advertisements for a motorcycle may be incorrectly identified as part ofan advertisement campaign for pancakes because the few color proportionsof the advertisements that are compared are similar. Increasing thenumber of colors in the subset used for color proportion comparisonsincreases comparison accuracy but decreases computation speed becausemore time is spent comparing additional color proportions.

In the illustrated example, the comparator 312 retrieves colorproportion values (e.g., color proportion values of the firstadvertisement 102 a) of a selected color subset to compare with colorproportion values of other colors in other advertisement images (e.g.,color proportion values of the second advertisement 102 b). For example,if the first color 210 and second color 212 (FIG. 2) are in the subset,the comparator 312 compares the first color proportion 214 (FIG. 2) ofthe first advertisement image 202 with the third color proportion 218(FIG. 2) of the second advertisement image 204. In addition, the examplecomparator 312 compares the second color proportion 216 (FIG. 2) of thefirst advertisement image 202 with the fourth color proportion 220 (FIG.2) of the second advertisement image 204. In the illustrated example,the comparator 312 outputs values representative of amounts ofsimilarities (or differences) between the color proportions 214, 216,218, 220 of corresponding colors of the advertisement images 202, 204for the colors in the subset.

To determine whether the second advertisement 102 b is part of the sameadvertisement campaign (e.g., one of the advertisement campaigns 110a-c) as the first advertisement 102 a, the advertisement analyzer 104 isprovided with the thresholds data store 310. In some examples, thethresholds data store 310 may be implemented using, for example, a lookup table, a configuration file, or a database. In the illustratedexample, the thresholds data store 310 stores thresholds, such as, forexample, the first color proportion range threshold 222 and the secondcolor proportion range 224 of FIG. 2, the color range threshold, and/ora number of matches threshold, for analyzing advertisement images 202,204. In examples disclosed herein, a number of matches threshold definesa threshold number of color proportions to be matched betweenadvertisement images 202, 204 that must be satisfied to confirm that thesecond advertisement 102 b belongs to the advertisement campaign (e.g.,one of the advertisement campaigns 110 a-c) of the first advertisement102 a. In some examples, the first color proportion range threshold 222,the second color proportion range threshold 224 the threshold colorrange, or the number of matches threshold are unique to eachadvertisement campaign. In some examples, the thresholds for analyzingadvertisement images are modifiable to adjust the degree of similaritybetween advertisements 102 and a first advertisement 102 a needed todetermine that an advertisement 102 is part of a particularadvertisement campaign. For example, the number of candidateadvertisements 102 b that are confirmed as belonging to an advertisementcampaign corresponding to the first advertisement 102 a increases whenthe degrees of similarities required for a match are relaxed byincreasing the first color proportion range threshold 222 and/or thesecond color proportion range threshold 224, increasing the color rangethreshold, and/or lowering the number of matches threshold.

In the illustrated example, the comparator 312 determines when asimilarity (or difference) between the first color proportion 214 andthe third color proportion 218 satisfies a first color proportion rangethreshold 222 and a similarity (or difference) between the second colorproportion 216 and the fourth color proportion 220 satisfies a secondcolor proportion range threshold 224. Referring to the example of FIG.2, the example comparator 312 determines that the second advertisement102 b corresponds to the same advertisement campaign as the firstadvertisement 102 a when the number of color proportions satisfying therespective color proportion range threshold 222, 224 satisfies thenumber of matches threshold. For example, if the number of matchesthreshold is 20, the example comparator 312 determines that the secondadvertisement 102 b corresponds to the advertisement campaign of thefirst advertisement 102 a if at least 20 of the color proportions of thesecond advertisement image 204 are sufficiently similar to 20 of thereference color proportions of the first advertisement image 202 withinthe respective color proportion range threshold 222, 224.

In the illustrated example, the advertisement analyzer 104 is providedwith the associator 314 to associate advertisements 102 withcorresponding advertisement campaigns (e.g., one of the advertisementcampaigns 110 a-c of FIG. 1). The advertisement analyzer 104 is alsoprovided with the advertisement campaign data store 316 to store thecategorized advertisements 112 a-c in association with correspondingadvertisement campaign identifiers, names, etc. In some examples, theadvertisement campaign data store 316 may be implemented using, forexample, a look up table, file structure that stores electronic files,and/or a database. In the illustrated example, the associator 314 tagscategorized advertisements 112 a-c by appending data indicating anadvertisement campaign association to a file of each categorizedadvertisement 112 a-c. In some such examples, the associator 314 tagsthe categorized advertisements 112 a-c with metadata indicative of aparticular advertisement campaign 110 a-c. In some such examples, themetadata includes an advertisement campaign identifier (ID) thatindicates the advertisement campaign to which the advertisement belongsto. In some examples, the associator 314 tags metadata to the firstadvertisement 102 a that is known to belong to and/or is representativeof a particular advertisement campaign. In some such examples, theassociator 314 tags second advertisements 102 b subsequently identifiedas sufficiently similar to the first advertisement 102 a with the samemetadata as the first advertisement 102 a. Alternatively, the associator314 may update the metadata tagged to the first advertisement 102 a. Insuch examples, the updated metadata identifies the second advertisement102 b as belonging to the same advertisement campaign as the firstadvertisement 102 a. In the illustrated example, after the categorizedadvertisements 112 a-c are associated with an advertisement campaign 110a-c and/or tagged with metadata indicating the association with aparticular advertisement campaign 110 a-c, the categorizedadvertisements 112 a-c and tagged metadata are stored in theadvertisement campaign data store 316. Alternatively, instead of storingthe categorized advertisements 112 a-c, the advertisement campaign datastore 316 stores information indicating which categorized advertisements112 a-c correspond to which advertisement campaigns 110 a-c.

While an example manner of implementing the advertisement analyzer 104of FIG. 1 is illustrated in FIG. 3, one or more of the elements,processes and/or devices illustrated in FIG. 3 may be combined, divided,re-arranged, omitted, eliminated and/or implemented in any other way.Further, the example advertisement data store 302, the exampleadvertisement retriever 304, the example color analyzer 306, the examplecolor proportion generator 308, the example thresholds data store 310,the example comparator 312, the example associator 314, the exampleadvertisement campaign data store 316, and/or, more generally, theexample advertisement analyzer 104 of FIG. 1 may be implemented byhardware, software, firmware and/or any combination of hardware,software and/or firmware. Thus, for example, any of the exampleadvertisement data store 302, the example advertisement retriever 304,the example color analyzer 306, the example color proportion generator308, the example thresholds data store 310, the example comparator 312,the example associator 314, the example advertisement campaign datastore 316, and/or, more generally, the example advertisement analyzer104 could be implemented by one or more analog or digital circuit(s),logic circuits, programmable processor(s), application specificintegrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s))and/or field programmable logic device(s) (FPLD(s)). When reading any ofthe apparatus or system claims of this patent to cover a purely softwareand/or firmware implementation, at least one of the exampleadvertisement data store 302, the example advertisement retriever 304,the example color analyzer 306, the example color proportion generator308, the example thresholds data store 310, the example comparator 312,the example associator 314, the example advertisement campaign datastore 316, and/or, more generally, the example advertisement analyzer104 is/are hereby expressly defined to include a tangible computerreadable storage device or storage disk such as a memory, a digitalversatile disk (DVD), a compact disk (CD), a Blu-ray disk, etc. storingthe software and/or firmware. Further still, the example advertisementanalyzer 104 of FIG. 3 may include one or more elements, processesand/or devices in addition to, or instead of, those illustrated in FIG.3, and/or may include more than one of any or all of the illustratedelements, processes and devices.

Flowcharts representative of example machine readable instructions forimplementing the advertisement analyzer 104 of FIG. 1 and FIG. 3 areshown in FIGS. 4, 5, 6, and 7. FIG. 4 is a flowchart representative ofmachine readable instructions that when executed, may be used toimplement the example advertisement analyzer 104 of FIGS. 1 and 3 togroup advertisements by advertisement campaign (e.g., one of theadvertisement campaigns 110 a-c). FIG. 5 is a flowchart representativeof machine readable instructions that when executed, may be used toimplement the example advertisement analyzer 104 of FIGS. 1 and 3 tocompare color proportions of advertisements. FIG. 6 is a flowchartrepresentative of machine readable instructions that when executed, maybe used to implement the example advertisement analyzer 104 of FIGS. 1and 3 to generate reference color proportions for an advertisementcampaign (e.g., one of the advertisement campaigns 110 a-c) and todefine thresholds for an advertisement campaign during a reference datageneration phase. FIG. 7 is a flowchart representative of machinereadable instructions that when executed, may be used to implement theexample advertisement analyzer 104 of FIGS. 1 and 3 to determine andcompare color proportions of a second advertisement 102 b (FIG. 1)during an advertisement comparison phase.

In the examples of FIGS. 4, 5, 6, and 7, the machine readableinstructions may be used to implement programs for execution by aprocessor such as the processor 812 shown in the example processorplatform 800 discussed below in connection with FIG. 8. The programs maybe embodied in software stored on a tangible computer readable storagemedium such as a CD-ROM, a floppy disk, a hard drive, a digitalversatile disk (DVD), a Blu-ray disk, or a memory associated with theprocessor 812, but the entire programs and/or parts thereof couldalternatively be executed by a device other than the processor 812and/or embodied in firmware or dedicated hardware. Further, although theexample programs are described with reference to the flowchartsillustrated in FIGS. 4, 5, 6, and 7, many other methods of implementingthe example advertisement analyzer 104 may alternatively be used. Forexample, the order of execution of the blocks may be changed, and/orsome of the blocks described may be changed, eliminated, or combined.

As mentioned above, the example processes of FIGS. 4, 5, 6, and 7 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a tangible computer readable storagemedium such as a hard disk drive, a flash memory, a read-only memory(ROM), a compact disk (CD), a digital versatile disk (DVD), a cache, arandom-access memory (RAM) and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm tangible computer readable storage medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media. Asused herein, “tangible computer readable storage medium” and “tangiblemachine readable storage medium” are used interchangeably. Additionallyor alternatively, the example processes of FIGS. 4, 5, 6, and 7 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media. As usedherein, when the phrase “at least” is used as the transition term in apreamble of a claim, it is open-ended in the same manner as the term“comprising” is open ended.

Turning now to the illustrated example of FIG. 4, the advertisementretriever 304 retrieves a first advertisement, such as a firstadvertisement 102 a (block 402). In the illustrated example, theadvertisement retriever 304 may retrieve the first advertisement 102 afrom the advertisement data store 302 of FIG. 3. In some examples, thefirst advertisement 102 a is received directly by the advertisementanalyzer 104 and/or originates from a web server 110 via the Internet106 and is stored in the advertisement data store 302.

In the illustrated example, the comparator 312 compares the firstadvertisement 102 a to all advertisements (block 404). In theillustrated example, the advertisement analyzer 104 compares the firstadvertisement 102 a to other advertisements according to process 404(FIG. 5) described in further detail below. In the illustrated example,the first advertisement 102 a is compared to other advertisements thatmay originate from the Internet 106, or the advertisement data store302.

In the illustrated example, the example advertisement analyzer 104determines whether the first advertisement image 202 sufficientlymatches to a second advertisement image 204 (block 406). If theadvertisement analyzer 104 determines that the first advertisement image202 did not sufficiently match to a second advertisement image 204, theassociator 314 generates a new advertisement campaign (block 412). Inthe illustrated example, the associator 314 generates a newadvertisement campaign (e.g., one of the advertisement campaigns 110 a-cof FIG. 1) by associating a new advertisement campaign ID with the firstadvertisement 102 a.

In the illustrated example, if the example advertisement analyzer 104determines that the first advertisement image 202 sufficiently matcheswith a second advertisement image 204, the example advertisementanalyzer determines whether the second advertisement image 204 isassociated with an existing advertisement campaign (block 408). Forexample, the advertisement analyzer 104 may access the advertisementcampaign data store 316 to retrieve a look up table that includesadvertisement campaigns and the advertisements associated with eachadvertisement campaign. The advertisement analyzer 104 checks the lookup table to determine if the second advertisement image 204 isassociated with an existing advertisement campaign. In some examples,the advertisement analyzer 104 looks for metadata tagged to the secondadvertisement image 204 to determine if the second advertisement 102 bis associated with an existing advertisement campaign. If theadvertisement analyzer 104 determines that the second advertisementimage 204 is not associated with an existing advertisement campaign, theassociator 314 generates a new advertisement campaign category (block412). In the illustrated example, the associator 314 associates the newadvertisement campaign category with the first advertisement 102 a.

In the illustrated example, if the advertisement analyzer 104 determinesthat the second advertisement image 204 is associated with an existingadvertisement campaign, the associator 314 associates the firstadvertisement 102 a with the existing advertisement campaign associatedwith the second advertisement image 204 (block 410). For example, asprinkled pancake advertisement campaign ID may be associated with thesecond advertisement 102 b. In such an example, the associator 314 alsoassociates the first advertisement 102 a with the sprinkled pancakeadvertisement campaign ID.

In the illustrated example, the advertisement analyzer 104 storesassociations in the advertisement campaign data store 316 (block 414).In the illustrated example, the associations stored in the advertisementcampaign data store 316 include new advertisement campaign categoryassociations generated by process 400 and/or associations with anexisting advertisement campaigns. In some examples, the associations arestored as metadata tagged to the advertisements. In some examples, theassociations are stored as a look up table in the advertisement campaigndata store 316.

In the illustrated example, the advertisement analyzer 104 determineswhether another advertisement is to be processed (block 416). If theadvertisement analyzer 104 determines that another advertisement is tobe processed, return controls to block 402. If the advertisementanalyzer 104 determines that another advertisement is not to beprocessed, process 400 ends.

FIG. 5 illustrates an example process 404 to be implemented by theadvertisement analyzer 104 to determine whether a first advertisementimage 202 sufficiently matches a second advertisement image 204. In theillustrated example, the advertisement retriever 304 retrieves thesecond advertisement image 204 (block 502). In the illustrated example,the second advertisement image 204 may be retrieved from the Internet106, or the advertisement data store 302.

In the illustrated example, the color analyzer 306 analyzes colorproperties of the first advertisement image 202 and the secondadvertisement image 204 to determine the proportions of colors in thefirst advertisement image 202 and the second advertisement image 204.For example, the color analyzer 306 determines pixel color values of thefirst advertisement image 202 and the second advertisement image 204(block 504). The example color analyzer 306 rounds the pixel colorvalues (block 506). For example, the color analyzer 306 rounds pixelcolor values of the first advertisement image 202 and the secondadvertisement image 204 by dropping a number of the least significantbits of each pixel color value such that, for example, numerous shadesof colors are grouped into fewer color shades.

In the illustrated example, the color proportion generator 308determines color proportions of the first advertisement image 202 andthe second advertisement image 204 (block 508). For example, the colorproportion generator 308 may identify the color proportions for thefirst advertisement image 202 as 20% red, 50% blue, 15% green, and 15%yellow.

In the illustrated example of FIG. 5, the color proportion generator 308then selects a subset of the color proportions of the firstadvertisement image 202 (block 510). The selected subset is to be usedto determine whether second advertisements 102 b belong to the sameadvertisement campaign as the first advertisement 102 a. In theillustrated example, the color proportions selected to be part of thesubset have higher proportions of presence in the first advertisementimage 202 relative to other color proportions of the plurality of colorsin the first advertisement image 202. For example, the color analyzer306 may detect 100 colors in the first advertisement image 202. In suchexamples, the comparator 312 may identify and select the top 50 colorsof the first advertisement image 202 having the top 50 largest colorproportions. In some examples, the color proportion generator 308 sortsthe color proportions of the first advertisement image 202 from largestto smallest to determine the top colors of the first advertisement image202.

In the illustrated example, the advertisement analyzer 104 obtains anumber of matches threshold (block 512). For example, a user and/or anadvertising entity may specify the number of matches threshold toaccomplish a particular accuracy in identifying advertisements ascorresponding to respective advertisement campaigns. In some examples,the advertisement analyzer 104 stores the number of matches threshold inthe threshold data store 310. In the illustrated example, theadvertisement analyzer 104 obtains one or more color proportion rangethreshold(s) 222, 224 (block 514). For example, a user and/oradvertising entity may specify the first color proportion rangethreshold 222 to accomplish a particular accuracy in identifyingadvertisements as corresponding to respective advertisement campaigns.In some examples, the advertisement analyzer 104 stores the first colorproportion range threshold 222 and/or the second color proportion rangethreshold 224 in the thresholds data store 310.

In the illustrated example, the comparator 312 compares the subset ofcolor proportions of the first advertisement image 202 to the colorproportions of the second advertisement image 204 (block 516). Forexample, the comparator 312 compares at least one of the colorproportions of the first advertisement image 202 to a color proportionof the second advertisement image 204. In the illustrated example, thecomparator 312 determines whether any of the color proportions of thefirst advertisement image 202 sufficiently match within the colorproportion range thresholds 222, 224 to the corresponding colorproportion of the second advertisement image 204 (block 518). In theillustrated example, the first color proportion range threshold 222and/or the second color proportion range threshold 224 were previouslydetermined at block 514 of the example process 404. In the illustratedexample, if none of the color proportions of the first advertisementimage 202 sufficiently matches a corresponding color proportion of thesecond advertisement image 204 within the respective color proportionrange threshold 222, 224, the advertisement analyzer 104 determineswhether to process another second advertisement 102 b (block 524). Ifthe advertisement analyzer 104 determines that another secondadvertisement 102 b is to be processed, control returns to block 510 atwhich the advertisement retriever 304 retrieves another secondadvertisement image 204 to compare to the first advertisement image 202.If the advertisement analyzer 104 determines that another secondadvertisement 102 b is not to be processed, the process 404 ends.

In the illustrated example, if the comparator 312 determines at block518 that color proportions of the first advertisement image 202sufficiently match the corresponding color proportions of the secondadvertisement image 204, the comparator 312 determines whether aquantity of color proportions of the first advertisement image 202matching a quantity of color proportions of the second advertisementimage 204 satisfies the number of matches threshold (block 520). Forexample, if the number of matches threshold is five, the comparator 312determines whether at least five color proportions of the firstadvertisement image 202 match within the respective color proportionsrange threshold 222, 224 to the corresponding color proportions of thesecond advertisement image 204. In the illustrated example, if thenumber of matches threshold is not satisfied, the advertisement analyzer104 determines whether to process another second advertisement 102 b. Ifthe advertisement analyzer 104 determines that another secondadvertisement 102 b is to be processed, control returns to block 502 toretrieve another second advertisement image 204. If the advertisementanalyzer 104 determines that another second advertisement 102 b is notto be processed, the process 404 ends. In the illustrated example, ifthe comparator 312 determines that the number of matches threshold issatisfied by the first advertisement image 202 and the secondadvertisement image 204, the comparator 312 identifies a match betweenthe first advertisement 102 a and the second advertisement 102 b (block522) and the process 404 ends.

FIG. 6 is an illustrated example of another process to groupadvertisements by advertisement campaign. In the illustrated example ofFIG. 6, process 600 generates reference characteristics to be used forcategorizing advertisements 102 into advertisement campaign categories.Turning now to the illustrated example of FIG. 6, the advertisementretriever 304 selects an advertisement campaign (block 602). Forexample, the advertisement retriever 304 may retrieve one of theadvertisement campaigns 110 a-c of FIG. 1. Also in the illustratedexample, the advertisement retriever 304 retrieves a correspondingreference advertisement (block 604). For example, the advertisementretriever 304 may retrieve the first advertisement 102 a to use as thereference advertisement from the advertisement data store 302 of FIG. 3.In some examples, the first advertisement 102 a is selected as areference for a corresponding advertisement campaign because it includescolor proportions that are representative of a design theme and/or colorcharacteristics of the corresponding advertising campaign. In someexamples, the first advertisement 102 a originates from a web server 110via the Internet 106 and is stored in the advertisement data store 302.During an advertisement comparison phase (e.g., the exampleadvertisement comparison phase of FIG. 7), candidate advertisements,such as the second advertisement 102 b, are analyzed to identifyadvertisement campaigns to which they correspond. During suchadvertisement comparison phase, color proportions of candidateadvertisements are compared to color proportions of the referenceadvertisements to determine whether the candidate advertisements belongto the same advertisement campaign as the reference advertisement.

In the illustrated example, the color analyzer 306 analyzes colorproperties of the reference advertisement to determine the proportionsof colors in the reference advertisement image, such as the firstadvertisement image 202. For example, the color analyzer 306 determinespixel color values of the reference advertisement image (block 606). Theexample color analyzer 306 rounds the pixel color values of thereference advertisement image (block 608). For example, the coloranalyzer 306 rounds pixel color values of the first advertisement image202 by dropping a number of the least significant bits of each pixelcolor value such that, for example, numerous shades of colors aregrouped into fewer color shades.

In the illustrated example, the color proportion generator 308determines color proportions of the reference advertisement (block 610).In the illustrated example, the color proportions generated by the colorproportion generator 308 for the reference advertisement are to be usedas reference color proportions which are representative of typical colorproportions of a particular corresponding advertisement campaign (e.g.,at least one of the advertisement campaigns 110 a-c). For example, thecolor proportion generator 308 may identify the reference colorproportions for the first advertisement 102 a of a particularadvertisement campaign as 20% red, 50% blue, 15% green, and 15% yellow.

In the illustrated example of FIG. 6, the color proportion generator 308then selects a subset of the color proportions of the referenceadvertisement image of the reference advertisement (block 612). Theselected subset is to be used to determine whether candidateadvertisements (e.g., the second advertisement 102 b of FIG. 2) belongto the same advertisement campaign as the reference advertisement. Inthe illustrated example, the color proportions selected to be part ofthe subset have higher proportions of presence in the referenceadvertisement image relative to other color proportions of the pluralityof colors in the reference advertisement image. For example, the coloranalyzer 306 may detect 100 colors in the reference advertisement image.In such examples, the comparator 312 may identify and select the top 50colors of the reference advertisement image having the top 50 largestcolor proportions. In some examples, the color proportion generator 308sorts the color proportions of the reference advertisement image fromlargest to smallest to determine the top colors of the referenceadvertisement image.

In the illustrated example, the advertisement analyzer 104 obtains anumber of matches threshold for the first advertisement 102 a (block614). In the illustrated example, the advertisement analyzer 104 obtainsone or more color proportion range threshold(s) 222, 224 for the firstadvertisement 102 a (block 616).

In the illustrated example, the associator 314 associates the selectedsubset of color proportions and the number of matches threshold and thecolor proportion range threshold(s) received at blocks 614 and 616 withthe corresponding advertisement campaign (e.g., at least one of theadvertisement campaigns 110 a-c) of the reference advertisement (block618). In the illustrated example, the associator 314 stores colorproportion values of the selected subset of color proportions in theadvertisement campaign data store 316 and stores the received thresholdsin the thresholds data store 310 (block 620) in association with theircorresponding advertisement campaign. Alternatively, the associator 314stores both the color proportion values of the selected subset of colorproportions and the thresholds in the advertisement campaign data store316. In the illustrated example, the example advertisement analyzer 104determines whether another advertisement campaign 110 a-c is to beprocessed (block 622). If another advertisement campaign 110 a-c is tobe processed, control returns to block 402 to select anotheradvertisement campaign 110 a-c. If another advertisement campaign 110a-c is not to be processed, the example process 600 ends.

FIG. 7 illustrates an example process 700 to be implemented by theadvertisement analyzer 104 for determining whether a candidateadvertisement (e.g., the second advertisement 102 b of FIG. 2) belongsto a same advertisement campaign, (e.g., one of the advertisementcampaigns 110 a-c of FIG. 1) as a reference advertisement (e.g., thefirst advertisement 102 a of FIG. 2). In the illustrated example, theadvertisement retriever 304 retrieves the candidate advertisement (block702). For example, the advertisement retriever 304 may retrieve thecandidate advertisement from the advertisement data store 302.Alternatively, the advertisement retriever 304 retrieves the candidateadvertisement directly or from web servers 110 via the Internet 106.

In the illustrated example, the color analyzer 306 analyzes colorproperties of a candidate advertisement image (e.g., the secondadvertisement image 204 of FIG. 2) to determine the color proportions ofthe candidate advertisement image. In the illustrated example, the coloranalyzer 306 determines pixel color values of the candidateadvertisement image (block 704). The example color analyzer 306 roundsthe pixel color values of the candidate advertisement image (block 706).

In the illustrated example, the color proportion generator 308 thendetermines candidate color proportions of the candidate advertisementimage (block 708). In the illustrated example, the candidate colorproportions (e.g., the third color proportion 218 and the fourth colorproportion 220 of FIG. 2) are representative of color proportions of thecandidate advertisement image. For example, the color proportiongenerator 308 may identify the candidate color proportions of thecandidate advertisement image 204 as 20% red, 50% blue, and 30% yellow.

In the illustrated example, the advertisement retriever 304 selects anadvertisement campaign for comparison with the candidate advertisement(block 710). In the illustrated example, the selected advertisementcampaign includes a reference advertisement processed by the exampleprocess 600 of FIG. 6 during the reference data generation phase togenerate reference color proportions and thresholds for comparison tocandidate advertisements. In this manner, the candidate colorproportions can be compared to the reference color proportions todetermine whether the candidate advertisement sufficiently matches thereference advertisement. If the candidate advertisement sufficientlymatches to the reference advertisement, the advertisement analyzer 104identifies that the candidate advertisement belongs to the sameadvertisement campaign (e.g., one of the advertisement campaigns 110a-c) as the reference advertisement.

In the illustrated example, the comparator 312 compares the candidatecolor proportions of the candidate advertisement image to the referencecolor proportions that correspond to the selected advertisement campaignof the reference advertisement (block 712). For example, the comparator312 compares at least one of the third color proportion 218 and/or thefourth color proportion 220 of the candidate advertisement image to thereference color proportions (e.g., the first color proportion 214 and/orthe second color proportion 216). In the illustrated example, thecomparator 312 determines whether any of the candidate color proportionsof the candidate advertisement image match within the respective colorproportion range threshold 222, 224 to the corresponding reference colorproportions of the selected advertisement campaign (block 714). In theillustrated example, the first color proportion range threshold 222and/or the second color proportion range threshold 224 was previouslydetermined at block 416 of the example process 400 during the referencedata generation phase. In the illustrated example, if none of thecandidate color proportions of the second advertisement image 204matches a corresponding reference color proportion within the respectivecolor proportion range threshold 222, 224, control returns to block 510at which the advertisement retriever 304 retrieves another advertisementcampaign (e.g., another one of the advertisement campaigns 110 a-c ofFIG. 1) to compare to the candidate advertisement image.

In the illustrated example, if the comparator 312 determines at block714 that the candidate color proportions of the candidate advertisementimage sufficiently match the corresponding reference color proportionsof the selected advertisement campaign, the comparator 312 thendetermines whether a quantity of candidate color proportions matching aquantity of reference color proportions satisfies the number of matchesthreshold (block 716). For example, if the number of matches thresholdis five, the comparator 312 determines whether at least five candidatecolor proportions of the second advertisement image 204 match within therespective color proportions range threshold 222, 224 to thecorresponding reference color proportions. In the illustrated example,if the number of matches threshold is not satisfied at block 516,control returns to block 510 at which the advertisement retriever 304retrieves another advertisement campaign (e.g., another one of theadvertisement campaigns 110 a-c) to compare with the candidateadvertisement image. For example, if the number of matches threshold isfive, and less than five candidate color proportions of the candidateadvertisement image satisfy the respective color proportion rangethreshold 222, 224 the number of matches threshold is not satisfied.

In the illustrated example, if the comparator 312 determines that thecandidate advertisement image satisfies the number of matches threshold,the associator 312 associates the candidate advertisement with theselected advertisement campaign (block 718). For example, if the numberof matches threshold is five, and five or more color proportions of thecandidate advertisement image satisfy the respective color proportionrange threshold 222, 224, the candidate advertisement image satisfiesthe number of matches threshold. In the illustrated example, theassociator 312 stores advertisement campaign association information inthe advertisement campaign data store 316 (block 720). In theillustrated example, advertisement campaign association informationincludes information, data, and/or metadata used to tag the candidateadvertisement to specify a particular advertisement campaign with whichthe candidate advertisement is associated.

In the illustrated example, the advertisement analyzer 104 determines ifthere are other advertisements 102 to be processed for association to anadvertisement campaign (block 722). If there are other advertisements102 to be processed for association to an advertisement campaign,control returns to block 502 to obtain another candidate advertisementfor processing. If all advertisements 102 have been processed forassociating to an advertisement campaign, the example process 700 ends.

FIG. 8 is a block diagram of an example processor platform 800 capableof executing the instructions of FIGS. 4, 5, 6, and 7 to implement theadvertisement analyzer 104 of FIGS. 1 and 3. The processor platform 800can be, for example, a server, a personal computer, a mobile device(e.g., a cell phone, a smart phone, a tablet such as an iPad™), apersonal digital assistant (PDA), an Internet appliance, or any othertype of computing device.

The processor platform 800 of the illustrated example includes aprocessor 812. The processor 812 of the illustrated example is hardware.For example, the processor 812 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors or controllers fromany desired family or manufacturer.

The processor 812 of the illustrated example includes a local memory 813(e.g., a cache). The processor 812 of the illustrated example is incommunication with a main memory including a volatile memory 814 and anon-volatile memory 816 via a bus 818. The volatile memory 814 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 816 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 814, 816 is controlledby a memory controller.

The processor 812 of the illustrated example includes the exampleadvertisement retriever 304, the example color analyzer 306, the examplecolor proportion generator 308, the example comparator 312, and theexample associator 314 of FIG. 3. In some examples, any combination ofthe blocks of the advertisement analyzer 104 (FIG. 3) may be implementedin the processor and/or more generally, the processor platform 800.

The processor platform 800 of the illustrated example also includes aninterface circuit 820. The interface circuit 820 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 822 are connectedto the interface circuit 820. The input device(s) 822 permit(s) a userto enter data and commands into the processor 812. The input device(s)can be implemented by, for example, an audio sensor, a microphone, acamera (still or video), a keyboard, a button, a mouse, a touchscreen, atrack-pad, a trackball, isopoint and/or a voice recognition system.

One or more output devices 824 are also connected to the interfacecircuit 820 of the illustrated example. The output devices 624 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 820 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip or a graphics driver processor.

The interface circuit 820 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network826 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 800 of the illustrated example also includes oneor more mass storage devices 828 for storing software and/or data.Examples of such mass storage devices 828 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives.

Coded instructions 832 to implement the example process 400 of FIG. 4,the example process 404 of FIG. 5, the example process 600 of FIG. 6,and the example process 700 of FIG. 7 may be stored in the mass storagedevice 828, in the volatile memory 814, in the non-volatile memory 816,and/or on a removable tangible computer readable storage medium such asa CD or DVD.

From the foregoing, it will be appreciated that the above disclosedmethods, apparatus and articles of manufacture enable a computing deviceto accurately identify advertisements as being part of particularadvertisement campaigns by analyzing advertisement image properties.Disclosed examples improve a computing device's efficiency and accuracyby comparing color proportions of advertisement images to determinecorresponding advertisement campaigns of advertisements. Disclosedexamples also facilitate determining corresponding advertisementcampaigns of advertisement images regardless of whether advertisementsare of dissimilar sizes and include text in different languages. Inaddition, by enabling adjustability of thresholds used for analyzingadvertisement images, examples disclosed herein enable the ability tobalance advertisement analysis accuracy with processing resourceutilization and computation time needed to process such advertisementimages.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. An apparatus to group advertisements byadvertisement campaign, the apparatus comprising: memory; instructionsin the apparatus; and processor circuitry to execute the instructionsto: determine pixel color values from a reference advertisement of anadvertisement campaign; remove bits from the pixel color valuesassociated with the reference advertisement; determine a first colorproportion corresponding the reference advertisement based on the pixelcolor values; associate the first color proportion with theadvertisement campaign; and identify a second advertisement asassociated with the advertisement campaign based on a second colorproportion of the second advertisement relative to the first colorproportion, the second advertisement different than the referenceadvertisement.
 2. The apparatus of claim 1, wherein in response toidentifying the second advertisement as being associated with theadvertisement campaign, the processor circuitry is to tag the secondadvertisement with metadata including an advertisement campaignidentifier.
 3. The apparatus of claim 1, wherein the processor circuitryis to identify that the second advertisement is associated with theadvertisement campaign when the first color proportion and the secondcolor proportion satisfy a color proportion threshold.
 4. The apparatusof claim 3, wherein the color proportion threshold defines a colorproportion value tolerance amount.
 5. The apparatus of claim 3, whereinthe processor circuitry is to identify that the second advertisement isassociated with the advertisement campaign when a first color rangeassociated with the first color proportion and a second color rangeassociated with the second color proportion satisfy a color rangethreshold.
 6. The apparatus of claim 1, wherein the processor circuitryis to: detect colors in the reference advertisement; and select a subsetof the colors based on the subset of the colors having relatively higherproportions of presence in the reference advertisement than others ofthe colors, the first color proportion corresponding to a respectivecolor of the subset of the colors.
 7. The apparatus of claim 1, whereinthe processor circuitry is to identify that the second advertisement isassociated with the advertisement campaign when a threshold number ofcolor proportions in a selected subset of color ranges detected in thereference advertisement match corresponding color proportions of thesecond advertisement within a threshold.
 8. A non-transitory computerreadable medium comprising instructions which, when executed, cause oneor more processors to at least: determine pixel color values from areference advertisement of an advertisement campaign; remove bits fromthe pixel color values associated with the reference advertisement;determine a first color proportion corresponding the referenceadvertisement based on pixels corresponding to individual colors in thereference advertisement relative to a total number of pixels of in thereference advertisement; associate the first color proportion with theadvertisement campaign; and identify a second advertisement asassociated with the advertisement campaign based on a second colorproportion of the second advertisement relative to the first colorproportion, the second advertisement different than the referenceadvertisement.
 9. The non-transitory computer readable medium of claim8, wherein the instructions, when executed, cause the one or moreprocessors to, in response to identifying the second advertisement asbeing associated with the advertisement campaign, tag the secondadvertisement with metadata including an advertisement campaignidentifier.
 10. The non-transitory computer readable medium of claim 8,wherein the instructions, when executed, cause the one or moreprocessors to identify that the second advertisement is associated withthe advertisement campaign the first color proportion and the secondcolor proportion satisfy a color proportion threshold.
 11. Thenon-transitory computer readable medium of claim 10, wherein the colorproportion threshold defines a color proportion value tolerance amount.12. The non-transitory computer readable medium of claim 10, wherein theinstructions cause the one or more processors to identify that thesecond advertisement is associated with the advertisement campaign whena first color range associated with the first color proportion and asecond color range associated with the second color proportion satisfy acolor range threshold.
 13. The non-transitory computer readable mediumof claim 8, wherein the instructions cause the one or more processorsto: detect colors in the reference advertisement; and select a subset ofthe colors based on the subset of the colors having relatively higherproportions of presence in the reference advertisement than others ofthe colors, a first color proportion corresponding to a respective colorof the subset of the colors.
 14. The non-transitory computer readablemedium of claim 8, wherein the instructions cause the one or moreprocessors to identify that the second advertisement is associated withthe advertisement campaign when a threshold number of color proportionsin a selected subset of color ranges detected in the referenceadvertisement match corresponding color proportions of the secondadvertisement within a threshold.
 15. An apparatus to groupadvertisements by advertisement campaign, the apparatus comprising:means for determining pixel color values to: determine pixel colorvalues from a reference advertisement of an advertisement campaign; andremove bits from the pixel color values associated with the referenceadvertisement; means for determining a first color proportioncorresponding the reference advertisement based on the pixel colorvalues; and means for associating the first color proportion with theadvertisement campaign, the means for associating to identify a secondadvertisement as associated with the advertisement campaign based on asecond color proportion of the second advertisement relative to thefirst color proportion, the second advertisement different than thereference advertisement.
 16. The apparatus of claim 15, wherein themeans for associating is to, in response to identifying the secondadvertisement as being associated with the advertisement campaign, tagthe second advertisement with metadata including an advertisementcampaign identifier.
 17. The apparatus of claim 15, wherein the meansfor associating is to identify that the second advertisement isassociated with the advertisement campaign when the first colorproportion the second color proportion satisfy a color proportionthreshold.
 18. The apparatus of claim 17, wherein the color proportionthreshold defines a color proportion value tolerance amount.
 19. Theapparatus of claim 17, wherein the means for associating is to identifythat the second advertisement is associated with the advertisementcampaign when a first color range associated with the first colorproportion and a second color range associated with the second colorproportion satisfy a color range threshold.
 20. The apparatus of claim15, wherein the means for determining pixel color values is to: detectcolors in the reference advertisement; and select a subset of the colorsbased on the subset of the colors having relatively higher proportionsof presence in the reference advertisement than others of the colors,the first color proportion corresponding to a respective color of thesubset of the colors.